$(function(){
  // 点击“去注册账号连接”
  $('#link_reg').on('click',function(){
    $('.login-box').hide()
    $('.reg-box').show()
  })
  // 点击“去登陆账号连接”
  $('#link_login').on('click',function(){
    $('.login-box').show()
    $('.reg-box').hide()
  })

  // 从 layui 中获取 form 对象
  let form = layui.form
  // 从 layui 中获取 layer 对象
  let layer = layui.layer
  // 函数节流
  let timer = null
  // 通过 form.verify()函数自定义校验规则
  form.verify({
    // 自定义了一个交做 pwd 校验规则
    pwd: [
      /^[\S]{6,12}$/
      ,'密码必须6到12位，且不能出现空格'
    ],
    //  校验两次密码是否一致的规则
    repwd: function(value){
      // 通过形参拿到的是确认密码框中的内容
      // 还需要拿到密码框中的内容
      // 然后进行一次等于的判断
      // 如果判断失败，则return一个提示消息即可
      let pwd = $('.reg-box [name=password]').val()
      if(pwd!==value){
        return '两次密码不一致'
      }
    }
  })
  // 监听注册表单的提交事件
  $('#form_reg').on('submit',function(e){
    e.preventDefault();
    if(timer){
      return ;
    }
      timer = setTimeout(()=>{
        $.post('/api/reguser',
        {username:$('#form_reg [name=username]').val(),
        password:$('#form_reg [name=password]').val()},(res)=>{
          if(res.status!==0){
            return layer.msg(res.message)
          }
          layer.msg('注册成功,请登录！')
          $('#form_reg [name=username]').val('')
          $('#form_reg [name=password]').val('')
          $('#form_reg [name=repassword]').val('')
          $('#link_login').click()
        })
        timer=null
      },2000)
  })

  // 监听登陆表单的提交事件
  $('#form_login').on('submit',function(e){
    e.preventDefault()
    if(timer){
      return;
    }
    timer = setTimeout(() => {
      let data = $(this).serialize();
      $.post('/api/login',data,(res)=>{
        if(res.status!==0){
          return layer.msg('用户名或密码错误！')
        }
        layer.msg('登陆成功！')
        // 将登陆成功得到的 token 字符串，保存到 localStorage 中
        localStorage.setItem('token',res.token)
        // 跳转到后台主页
        location.href='/index.html'
      })
      timer=null
    }, 1000);
  })
})